Often as a software architect, the focus is on technology and related software delivery areas. However, awareness and knowledge about design processes help a software architect to deliver the required business value. User-centered design is one of the design processes, which helps software architects to collaborate with multidisciplinary teams to build the end-to-end user experience. That’s why you should learn how to apply user-centered design as a software architect.
Definition of user-centered design
User-centered design (UCD) or user-driven development (UDD) is a framework of the process in which usability goals, user characteristics, environment, tasks, and workflow of a product, service, or process are given extensive attention at each stage of the design process – Wikipedia
Principles of user-centered design
Key principles or tenets driving user-centered design are:
- Early user engagement & collaboration
- Continuous requirement clarification & feedback
- Applying user feedback loop in the product life cycle
- Iterative user experience and design process
Process on how to apply user-centered design
- The below process model is an opinionated view of applying user-centered design in any program as a reference
- It has been categorized as four different phases to be followed iterately – Plan, Design, Prototype, and Build.
- The suggestive activities, which are self-explanatroy, the typical set of activities carried out during these phases:
- Plan – Identify business needs, Conduct user research, Assess competitive landscape, and explore the brand.
- Design – Priortize & document business requirements, Create sitemap, Conduct participatory design, Create personas & scenarios, Develop experience model, and Explore visual design direction.
- Prototype – Create wireframes and functional specifications, Create high-resolution visual components and style guide, Conduct user testing, Assemble content, and Identity voice and tone guidelines.
- Build & Iterate – Build user interface, Continuous build and testing, Build and integrate with microservices, Deploy to cloud, Continously collect user feedback, and measure, track & improve.
To conclude, the above approach on how to apply user-centered design as a software architect helps to deliver the solution closer to user-centric expectations and increases the success rate of the targeted application.
References
- Introduction to user-centered design
- User Centered Design Principles & Methods
- User-Centered Design: Principles, Process, Examples